﻿//----------------------------------------------------------------
// Desc: 自动处理服务对象，采用挂接方式
// Edit: ShowLong, http://blog.csdn.net/showlong
//
// Date Created: 2011-09-30
//
// Update Date : 
//
// Copyright (c) Fuel4D (http://www.fuel4d.com), All rights reserved.
//
// 注意：
//   1.如果调用fge->Attach绑定到引擎时，变量fge自动设置，否则需要手动设置
//----------------------------------------------------------------
#pragma once


class IFEngine;


class IFService : public IFServeObject
{
public:
    IFService(IFEngine* p = 0)
        :fge(p)
    {}

    IFEngine* fge;

    // 获取本服务所在引擎
    FINLINE IFEngine* GetEngine(){ return fge; }
    // 在应用程序渲染之前调用
    virtual void Render(){}
    // 设置丢失时调用
    virtual void Lost(){}
    // 设备恢复时调用（启动引擎后会调用一次）
    virtual void Reset(){}
};